function [output]=gaussLowPassFilter(img)
    % 原理：将图片与高斯低通函数进行卷积
    % img 为一维图片矩阵
    [f1, f2] = freqspace(size(img), 'meshgrid');
    % 获取等间距的指定大小的矩阵 类似meshgrid
    D = 100 / size(img, 1);
    r = f1 .^ 2 + f2.^2;
    gaussLowPassFt = ones(size(img)); % 创建与图片等大的纯一矩阵
    for i = 1: size(img, 1) 
        % 生成频域高斯低通滤波矩阵
        % H(u,v)=e^( - D^2(u, v) / (2 * D^2) )
        for j = 1: size(img, 2)
            t = r(i, j) / (D * D);
            gaussLowPassFt(i, j) = exp(-t);
        end
    end

    imgFt = fftshift(fft2(double(img))); % 对图片进行傅里叶变换 并将频域中的零值点移到中央
    imgLowPassFt = imgFt.*gaussLowPassFt; % 将高斯低通矩阵与图片频域相乘（相当于卷积）
    imgLowPassFt = ifftshift(imgLowPassFt); % 对频域中的零值点移到中央这个操作进行恢复（与fftshift相反）
    output = real(ifft2(imgLowPassFt)); % 对图片频域进行傅里叶反变换 得到高斯低通滤波后的图片

    % https://blog.csdn.net/qq_40608730/article/details/105809569